package com.example.dao;

import com.example.bean.Customer;

import java.sql.Connection;
import java.sql.Date;
import java.util.List;

/**
 * 针对customers表的常用操作
 */
public interface CustomerDAO {

    /**
     * 插入数据
     */
    void insert(Connection connection, Customer customer);

    /**
     * 针对指定的ID删除记录
     */
    void deleteById(Connection connection, int id);

    /**
     * 更新数据
     */
    void updateById(Connection connection, Customer customer);

    /**
     * 根据ID查询数据
     */
    Customer getCustomerById(Connection connection, int id);

    /**
     * 查询所有数据
     */
    List<Customer> getAll(Connection connection);

    /**
     * 查询记录总数
     */
    Long getCount(Connection connection);

    /**
     * 获取最大生日
     */
    Date getMaxBirth(Connection connection);
}
